//https://leetcode.cn/problems/search-insert-position/

//法1：
class Solution {
    public int searchInsert(int[] nums, int target) {
        int left = 0;
        int right = nums.length-1;
        while (left < right) {
            int mid = left + (right - left + 1) / 2;
            if (nums[mid] <= target) {
                left = mid;
            }else {
                right = mid - 1;
            }
        }
        if (nums[left] == target) return left;
        else if(nums[left] < target) return left + 1;
        else return 0;
    }
}
//法2：
class Solution2 {
    public int searchInsert(int[] nums, int target) {
        int left = 0;
        int right = nums.length - 1;
        while (left < right) {
            int mid = left + (right - left) / 2;
            if (nums[mid] < target) {
                left = mid + 1;
            }else {
                right = mid;
            }
        }
        if (nums[left] < target) return left+1;
        return left;
    }
}